home *** CD-ROM | disk | FTP | other *** search
/ MacFormat 1996 October / MacFormat CD Edition MF42 (October 1996).ISO / mac / Shareware City / Developers / Instant Subclass 1.1 dist / About Instant Subclass next >
Encoding:
Text File  |  1996-06-27  |  4.4 KB  |  129 lines  |  [TEXT/R*ch]

  1. Instant Subclass 1.1
  2. Eliminate the C++ drudgery!
  3. ©1995-1996 Chris K. Thomas.  All Rights Reserved.
  4.  
  5. Instant Subclass is a developer tool which generates subclass template code
  6. from your base classes.
  7.  
  8. See the Magic!  Drop your .h file on Instant Subclass.  Turn on the methods
  9. you wish to inherit.  Click Generate, and new .cp and .h files with
  10. boilerplate code are instantly generated!  Every C++ programmer should have
  11. it so easy!
  12.  
  13. ——— Heavy Guilt Trip ————————————————————————————————————————————————————————
  14.  
  15. Don’t forget to Register.  Only $10.  If you truly can't afford it, I also
  16. accept verbal applause (and abuse) via ckt@kagi.com.
  17.  
  18. ——— Version History —————————————————————————————————————————————————————————
  19.  
  20. • 1.1  June 1996
  21.  
  22. Features Added:
  23. * Select All, Select None, and Select Inverse (added to the Edit
  24.   menu) now work with the methods list. 
  25. * Multiple template files supported.
  26. * Generated method declaration text is now parameterized through the
  27.   template file.
  28.  
  29. Bugs Fixed:
  30. * Major surgery on PowerPlant’s table classes.  The methods list
  31.   now behaves like a real Mac list.  Wish Metrowerks would’ve done
  32.   this work for me...
  33.  
  34. • 1.0.1  April-May 1996
  35.  
  36. Features Added:
  37. * The file header (version history, copyright, etc) is now parameterized.
  38.   Customize!
  39. * I switched from “turning *off* methods you don’t want” to “turning *on*
  40.   methods you do want.”  This seems to make more sense.
  41.  
  42. Bugs fixed:
  43. * "virtual" included in the method implementation declaration in the .cp file.
  44. * used the base class' name for the destructor
  45. * lots of minor application bugs not relevant to source generation.
  46. * No 68k build (forgetfulness)
  47.  
  48. Bugs partially fixed:
  49. * difficult to select methods in the methods list.  The full fix awaits a 
  50.   new version of PowerPlant.  Should at least behave normally if you don’t
  51.   drag while selecting.
  52.  
  53. • 1.0 First Release
  54.  
  55. ——— Customization ———————————————————————————————————————————————————————————
  56.  
  57. 1.  Either duplicate or edit an existing template file in the "Source
  58.     Generation Templates" folder.
  59.  
  60. In each file in the “Source Generation Templates” folder, there is a TEXT
  61. resource, id 128. This resource contains the text of the file header.  Instant
  62. Subclass does an intermediate variable substition scan and then places it at the
  63. beginning of both generated files.  TEXT resource id 129 contains a template for
  64. method declarations.
  65.  
  66. The variable substition scan replaces variables with an appropriate
  67. generated value.
  68.  
  69. Currently, only one variable is supported for the file info header:
  70.  
  71. Variable        Replaced with
  72. ———————————————————————————————————————————————————
  73. <FileName>        Filename of the current file.
  74.  
  75. And these are supported for the method template:
  76.  
  77. <ReturnType>    Method return type.
  78. <MethodName>    Method name.
  79. <Arguments>        Method arguments.
  80.  
  81. Several sample template files are included.  More text will be customizable
  82. in the future, most importantly class declarations, and more variable types
  83. will be added.  Suggestions are welcome at ckt@kagi.com
  84.  
  85. ——— Limitations —————————————————————————————————————————————————————————————
  86.  
  87. InstantSubclass can't handle preprocessor weirdness, such as:
  88.  
  89. class Gibberish
  90. {
  91.     virtual void SAVE_DECLARED_METHOD(MyDeclaredMethod, (char *methodArg));
  92. };
  93.  
  94. This, BTW, is one of the reasons that opponents of the C preprocessor
  95. wish to see the preprocessor eliminated from the language specification.
  96.  
  97.  
  98. ——— Future Plans ————————————————————————————————————————————————————————————
  99.  
  100. Suggestions, ideas and bug reports are all entirely welcome at ckt@kagi.com.
  101.  
  102. Next few versions...
  103.  
  104. 1. do something about friends and copy constructors (but what?)
  105. 2. implement the base class access controls.
  106. 3. inherit from structs.  This is trivial, but to be effective requires 6:
  107. 4. include an option to not add classes without methods to the class list.
  108. 5. track appearance changes for Copland
  109. 6. support for other languages is possible.  This will probably be
  110.    accomplished through template files.
  111. 7. fix bugs, fix bugs, fix bugs...
  112.  
  113. further off...
  114. • add support for the derivation of SOM-based classes
  115. • add full AppleScript support - tedious but very cool
  116.  
  117.  
  118. ——— Legalities ——————————————————————————————————————————————————————————————
  119.  
  120. * This software is provided AS IS.
  121.  
  122. * Instant Subclass may be included on any and all CD-ROMs on the
  123. condition that I receive one copy of any and all such CD-ROMS including
  124. Instant Subclass.
  125.  
  126. * Instant Subclass may not be distributed via the Microsoft Network.
  127.  
  128. * Instant Subclass may not be distributed via Prodigy.
  129.